<template>
  <div class="page_root" :key="queryUpdateFlag" data-page-name="项目进度维护" data-page-identification="w_0t99ah6jy8">
    <a-spin :spinning="pageLoading.loading" :tip="pageLoading.tip">
      <!-- begin vid_29phjnk96d 全局提示_提交成功 -->
      <!-- end vid_29phjnk96d 全局提示_提交成功 -->
      <!-- begin vid_wi3cq3bxrr 全局提示_新建失败 -->
      <!-- end vid_wi3cq3bxrr 全局提示_新建失败 -->
      <!-- begin vid_ygtoh44tej 全局提示_编辑失败 -->
      <!-- end vid_ygtoh44tej 全局提示_编辑失败 -->
      <!-- begin vid_ji6fye3n26 全局提示_数据正在审批中 -->
      <!-- end vid_ji6fye3n26 全局提示_数据正在审批中 -->
      <!-- begin vid_rqdrvl0653 全局提示删除失败 -->
      <!-- end vid_rqdrvl0653 全局提示删除失败 -->
      <!-- begin vid_wu7cuhr9ap 新建校验全局提示_kac0t5vss1 -->
      <!-- end vid_wu7cuhr9ap 新建校验全局提示_kac0t5vss1 -->
      <!-- begin vid_rdt3ye86dc 编辑工作进展 -->
      <a-modal
        class="vid_rdt3ye86dc"
        v-model:visible="vid_rdt3ye86dc_props.visible"
        :footer="null"
        :title="'编辑工作进展'"
        :width="690"
        :maskClosable="false"
        :centered="true"
        :okText="'提交'"
        @ok="handle_vid_rdt3ye86dc_ok"
        @cancel="handle_vid_rdt3ye86dc_cancel"
      >
        <!-- begin vid_s56vueei5e 表单容器_jtxe3m9gbz -->
        <a-form ref="vid_s56vueei5e_ref" class="vid_s56vueei5e" :model="y_bsgawpe15k" :formModel="vid_s56vueei5e_props.formModel">
          <!-- begin vid_sy94ngkdfg 表单项容器_0pz7mco9bb -->
          <a-form-item name="u_qn5akzqkk4" :rules="y_bsgawpe15k_rules[`u_qn5akzqkk4`]" class="vid_sy94ngkdfg" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
            <!-- begin vid_8pns7v33m5 日期submissionDate -->
            <a-date-picker
              class="vid_8pns7v33m5"
              :getPopupContainer="(node) => node.parentNode"
              v-model:value="y_bsgawpe15k.u_qn5akzqkk4"
              :placeholder="'请选择周报提交日期'"
              :valueFormat="'YYYY-MM-DD'"
              :showTime="vid_8pns7v33m5_props.showTime"
            >
            </a-date-picker>
            <!-- end vid_8pns7v33m5 日期submissionDate -->
            <template #label>
              <!-- begin vid_5c8gm6thne 简单文本_xxz4p8p107 -->
              <span class="vid_5c8gm6thne"> 周报提交日期 </span>
              <!-- end vid_5c8gm6thne 简单文本_xxz4p8p107 -->
            </template>
          </a-form-item>
          <!-- end vid_sy94ngkdfg 表单项容器_0pz7mco9bb -->
          <!-- begin vid_j8rr2idlwq 表单项容器_d5d5r59ab1 -->
          <a-form-item name="c_xnc5a6bd1k" :rules="y_bsgawpe15k_rules[`c_xnc5a6bd1k`]" class="vid_j8rr2idlwq" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
            <!-- begin vid_raw9r13imf 下拉框plName -->
            <a-select
              class="vid_raw9r13imf"
              :getPopupContainer="(node) => node.parentNode"
              v-model:value="y_bsgawpe15k.c_xnc5a6bd1k"
              :allowClear="true"
              :showSearch="true"
              :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
              :placeholder="'请选择项目/技术负责人'"
              :selected="vid_raw9r13imf_props.selected"
              :searchValue="vid_raw9r13imf_props.searchValue"
              :options="vid_raw9r13imf_options()"
              @change="handle_vid_raw9r13imf_change"
              @search="handle_vid_raw9r13imf_search"
            >
            </a-select>
            <!-- end vid_raw9r13imf 下拉框plName -->
            <!-- begin vid_qarxuskmxu 交付项目请选择  -->
            <span class="vid_qarxuskmxu"> 交付项目请选择&nbsp; </span>
            <!-- end vid_qarxuskmxu 交付项目请选择  -->
            <!-- begin vid_d66dmi6ade 项目负责人 -->
            <span class="vid_d66dmi6ade"> 项目负责人 </span>
            <!-- end vid_d66dmi6ade 项目负责人 -->
            <!-- begin vid_h59riwksfl ，平台项目请选择  -->
            <span class="vid_h59riwksfl"> ，平台项目请选择&nbsp; </span>
            <!-- end vid_h59riwksfl ，平台项目请选择  -->
            <!-- begin vid_c4cgb0q4ry 技术负责人 -->
            <span class="vid_c4cgb0q4ry"> 技术负责人 </span>
            <!-- end vid_c4cgb0q4ry 技术负责人 -->
            <template #label>
              <!-- begin vid_c7srr9lyt1 项目/技术负责人 -->
              <span class="vid_c7srr9lyt1"> 项目/技术负责人 </span>
              <!-- end vid_c7srr9lyt1 项目/技术负责人 -->
            </template>
          </a-form-item>
          <!-- end vid_j8rr2idlwq 表单项容器_d5d5r59ab1 -->
          <!-- begin vid_s4tt8wsqnh 表单项容器_ia0zjhnh50 -->
          <a-form-item name="u_nkuyc6hl1c" :rules="y_bsgawpe15k_rules[`u_nkuyc6hl1c`]" class="vid_s4tt8wsqnh" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
            <!-- begin vid_gy5l740dez 下拉框pmName -->
            <a-select
              class="vid_gy5l740dez"
              :getPopupContainer="(node) => node.parentNode"
              v-model:value="y_bsgawpe15k.u_nkuyc6hl1c"
              :allowClear="true"
              :showSearch="true"
              :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
              :placeholder="'请选择项目经理/产品经理'"
              :selected="vid_gy5l740dez_props.selected"
              :searchValue="vid_gy5l740dez_props.searchValue"
              :options="vid_gy5l740dez_options()"
              @change="handle_vid_gy5l740dez_change"
              @search="handle_vid_gy5l740dez_search"
            >
            </a-select>
            <!-- end vid_gy5l740dez 下拉框pmName -->
            <!-- begin vid_889tbzdf4b 简单文本_2j6mi3cqd4 -->
            <span class="vid_889tbzdf4b"> 交付项目请选择&nbsp; </span>
            <!-- end vid_889tbzdf4b 简单文本_2j6mi3cqd4 -->
            <!-- begin vid_r93xhv5r30 项目经理 -->
            <span class="vid_r93xhv5r30"> 项目经理 </span>
            <!-- end vid_r93xhv5r30 项目经理 -->
            <!-- begin vid_dxuwt0x2mo 简单文本_e9czacszt9 -->
            <span class="vid_dxuwt0x2mo"> ，平台项目请选择&nbsp; </span>
            <!-- end vid_dxuwt0x2mo 简单文本_e9czacszt9 -->
            <!-- begin vid_r20uf5hzyv 产品经理 -->
            <span class="vid_r20uf5hzyv"> 产品经理 </span>
            <!-- end vid_r20uf5hzyv 产品经理 -->
            <template #label>
              <!-- begin vid_77ik0apjal 项目/产品经理 -->
              <span class="vid_77ik0apjal"> 项目/产品经理 </span>
              <!-- end vid_77ik0apjal 项目/产品经理 -->
            </template>
          </a-form-item>
          <!-- end vid_s4tt8wsqnh 表单项容器_ia0zjhnh50 -->
          <!-- begin vid_jgbr65y1cl 表单项容器_umk263nm8h -->
          <a-form-item name="f_o6qcrty2gs" :rules="y_bsgawpe15k_rules[`f_o6qcrty2gs`]" class="vid_jgbr65y1cl" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
            <!-- begin vid_5lxdiqxp8a 文本域description -->
            <a-textarea class="vid_5lxdiqxp8a" v-model:value="y_bsgawpe15k.f_o6qcrty2gs" :placeholder="'请输入本周进展简述'" :autoSize="true" :showCount="true" :maxlength="400" :allowClear="true">
            </a-textarea>
            <!-- end vid_5lxdiqxp8a 文本域description -->
            <template #label>
              <!-- begin vid_bl74xu4000 简单文本_ncjquuj8dy -->
              <span class="vid_bl74xu4000"> 本周进展简述 </span>
              <!-- end vid_bl74xu4000 简单文本_ncjquuj8dy -->
            </template>
          </a-form-item>
          <!-- end vid_jgbr65y1cl 表单项容器_umk263nm8h -->
        </a-form>
        <!-- end vid_s56vueei5e 表单容器_jtxe3m9gbz -->
        <!-- begin vid_bu9bs5xqph 容器_4z6ne09yye -->
        <al-box class="vid_bu9bs5xqph">
          <!-- begin vid_1i3z4r77bp 取消 -->
          <a-button class="vid_1i3z4r77bp" @click="handle_vid_1i3z4r77bp_click"> 取消 </a-button>
          <!-- end vid_1i3z4r77bp 取消 -->
          <!-- begin vid_rrwhg6uosl 提交 -->
          <a-button class="vid_rrwhg6uosl" :type="'primary'" @click="handle_vid_rrwhg6uosl_click"> 提交 </a-button>
          <!-- end vid_rrwhg6uosl 提交 -->
        </al-box>
        <!-- end vid_bu9bs5xqph 容器_4z6ne09yye -->
      </a-modal>
      <!-- end vid_rdt3ye86dc 编辑工作进展 -->
      <!-- begin vid_1gapeg71i1 新建工作进展 -->
      <a-modal
        class="vid_1gapeg71i1"
        v-model:visible="vid_1gapeg71i1_props.visible"
        :footer="null"
        :title="'新建工作进展'"
        :width="690"
        :maskClosable="false"
        :centered="true"
        :okText="'提交'"
        @cancel="handle_vid_1gapeg71i1_cancel"
        @ok="handle_vid_1gapeg71i1_ok"
      >
        <!-- begin vid_p1bc5uikot 表单容器_fguxemxo0k -->
        <a-form ref="vid_p1bc5uikot_ref" class="vid_p1bc5uikot" :model="y_9a3mkqlyw4" :formModel="vid_p1bc5uikot_props.formModel">
          <!-- begin vid_ijxyzn5yc3 表单项容器_pkcz0z3gej -->
          <a-form-item name="x_n8lvnhh42o" :rules="y_9a3mkqlyw4_rules[`x_n8lvnhh42o`]" class="vid_ijxyzn5yc3" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
            <!-- begin vid_ziyj99d09s 日期submissionDate -->
            <a-date-picker
              class="vid_ziyj99d09s"
              :getPopupContainer="(node) => node.parentNode"
              v-model:value="y_9a3mkqlyw4.x_n8lvnhh42o"
              :placeholder="'请选择周报提交日期'"
              :valueFormat="'YYYY-MM-DD'"
              :showTime="vid_ziyj99d09s_props.showTime"
            >
            </a-date-picker>
            <!-- end vid_ziyj99d09s 日期submissionDate -->
            <template #label>
              <!-- begin vid_bl1053midp 周报提交日期 -->
              <span class="vid_bl1053midp"> 周报提交日期 </span>
              <!-- end vid_bl1053midp 周报提交日期 -->
            </template>
          </a-form-item>
          <!-- end vid_ijxyzn5yc3 表单项容器_pkcz0z3gej -->
          <!-- begin vid_zdea1dfncd 表单项容器_t5oxb8zor7 -->
          <a-form-item name="r_phcgfus9nz" :rules="y_9a3mkqlyw4_rules[`r_phcgfus9nz`]" class="vid_zdea1dfncd" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
            <!-- begin vid_tnfq4cf6ft 下拉框plName -->
            <a-select
              class="vid_tnfq4cf6ft"
              :getPopupContainer="(node) => node.parentNode"
              v-model:value="y_9a3mkqlyw4.r_phcgfus9nz"
              :allowClear="true"
              :showSearch="true"
              :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
              :placeholder="'请选择项目/技术负责人'"
              :selected="vid_tnfq4cf6ft_props.selected"
              :searchValue="vid_tnfq4cf6ft_props.searchValue"
              :options="vid_tnfq4cf6ft_options()"
              @change="handle_vid_tnfq4cf6ft_change"
              @search="handle_vid_tnfq4cf6ft_search"
            >
            </a-select>
            <!-- end vid_tnfq4cf6ft 下拉框plName -->
            <!-- begin vid_j5hmnjsltj 简单文本_p9qx2p5ed9 -->
            <span class="vid_j5hmnjsltj"> 交付项目请选择&nbsp; </span>
            <!-- end vid_j5hmnjsltj 简单文本_p9qx2p5ed9 -->
            <!-- begin vid_648vqhfrms 简单文本_6rgq4il348 -->
            <span class="vid_648vqhfrms"> 项目负责人 </span>
            <!-- end vid_648vqhfrms 简单文本_6rgq4il348 -->
            <!-- begin vid_ccumcjncwx 简单文本_ttt0ownxl3 -->
            <span class="vid_ccumcjncwx"> ，平台项目请选择&nbsp; </span>
            <!-- end vid_ccumcjncwx 简单文本_ttt0ownxl3 -->
            <!-- begin vid_wuris1ear2 简单文本_u6wa1o9tr4 -->
            <span class="vid_wuris1ear2"> 技术负责人 </span>
            <!-- end vid_wuris1ear2 简单文本_u6wa1o9tr4 -->
            <template #label>
              <!-- begin vid_kxit9eeacs 简单文本_rlki3oqfp6 -->
              <span class="vid_kxit9eeacs"> 项目/技术负责人 </span>
              <!-- end vid_kxit9eeacs 简单文本_rlki3oqfp6 -->
            </template>
          </a-form-item>
          <!-- end vid_zdea1dfncd 表单项容器_t5oxb8zor7 -->
          <!-- begin vid_u1d0oxtj9s 表单项容器_xh6yq9x6rw -->
          <a-form-item name="h_u2pt65y47b" :rules="y_9a3mkqlyw4_rules[`h_u2pt65y47b`]" class="vid_u1d0oxtj9s" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
            <!-- begin vid_4e40tfpzpy 下拉框pmName -->
            <a-select
              class="vid_4e40tfpzpy"
              :getPopupContainer="(node) => node.parentNode"
              v-model:value="y_9a3mkqlyw4.h_u2pt65y47b"
              :allowClear="true"
              :showSearch="true"
              :filterOption="(input, option) => {
          return option.label.toLowerCase().indexOf(input.toLowerCase()) >= 0;
        }"
              :placeholder="'请选择项目经理/产品经理'"
              :selected="vid_4e40tfpzpy_props.selected"
              :searchValue="vid_4e40tfpzpy_props.searchValue"
              :options="vid_4e40tfpzpy_options()"
              @change="handle_vid_4e40tfpzpy_change"
              @search="handle_vid_4e40tfpzpy_search"
            >
            </a-select>
            <!-- end vid_4e40tfpzpy 下拉框pmName -->
            <!-- begin vid_3ryskctmy6 简单文本_6tgbh0z618 -->
            <span class="vid_3ryskctmy6"> 交付项目请选择&nbsp; </span>
            <!-- end vid_3ryskctmy6 简单文本_6tgbh0z618 -->
            <!-- begin vid_3oh47af6mr 简单文本_3697ra0l9w -->
            <span class="vid_3oh47af6mr"> 项目经理 </span>
            <!-- end vid_3oh47af6mr 简单文本_3697ra0l9w -->
            <!-- begin vid_ht7dp4sz4h 简单文本_mp1sgi940u -->
            <span class="vid_ht7dp4sz4h"> ，平台项目请选择&nbsp; </span>
            <!-- end vid_ht7dp4sz4h 简单文本_mp1sgi940u -->
            <!-- begin vid_3knara3kr3 简单文本_puhsiju39k -->
            <span class="vid_3knara3kr3"> 产品经理 </span>
            <!-- end vid_3knara3kr3 简单文本_puhsiju39k -->
            <template #label>
              <!-- begin vid_8cwsf53znt 简单文本_neb3jm26v6 -->
              <span class="vid_8cwsf53znt"> 项目/产品经理 </span>
              <!-- end vid_8cwsf53znt 简单文本_neb3jm26v6 -->
            </template>
          </a-form-item>
          <!-- end vid_u1d0oxtj9s 表单项容器_xh6yq9x6rw -->
          <!-- begin vid_pirsai99up 表单项容器_1rv05v2534 -->
          <a-form-item name="o_dxurz7o9dz" :rules="y_9a3mkqlyw4_rules[`o_dxurz7o9dz`]" class="vid_pirsai99up" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
            <!-- begin vid_949icguubm 文本域description -->
            <a-textarea class="vid_949icguubm" v-model:value="y_9a3mkqlyw4.o_dxurz7o9dz" :placeholder="'请输入本周进展简述'" :autoSize="true" :showCount="true" :maxlength="400" :allowClear="true">
            </a-textarea>
            <!-- end vid_949icguubm 文本域description -->
            <template #label>
              <!-- begin vid_i3ugy2oksk 简单文本_yx6caiut0a -->
              <span class="vid_i3ugy2oksk"> 本周进展简述 </span>
              <!-- end vid_i3ugy2oksk 简单文本_yx6caiut0a -->
            </template>
          </a-form-item>
          <!-- end vid_pirsai99up 表单项容器_1rv05v2534 -->
        </a-form>
        <!-- end vid_p1bc5uikot 表单容器_fguxemxo0k -->
        <!-- begin vid_2ebp2maika 容器_rgeyym784g -->
        <al-box class="vid_2ebp2maika">
          <!-- begin vid_fvyhl9q8vl 按钮_ilu5f0futc -->
          <a-button class="vid_fvyhl9q8vl" @click="handle_vid_fvyhl9q8vl_click"> 取消 </a-button>
          <!-- end vid_fvyhl9q8vl 按钮_ilu5f0futc -->
          <!-- begin vid_ettmq0qz5b 按钮_nfgoxo5oms -->
          <a-button class="vid_ettmq0qz5b" :type="'primary'" @click="handle_vid_ettmq0qz5b_click"> 提交 </a-button>
          <!-- end vid_ettmq0qz5b 按钮_nfgoxo5oms -->
        </al-box>
        <!-- end vid_2ebp2maika 容器_rgeyym784g -->
      </a-modal>
      <!-- end vid_1gapeg71i1 新建工作进展 -->
      <!-- begin vid_c9qmws388m 删除 -->
      <a-modal
        class="vid_c9qmws388m"
        v-model:visible="vid_c9qmws388m_props.visible"
        :centered="true"
        :title="'删除'"
        :maskClosable="false"
        :width="320"
        @ok="handle_vid_c9qmws388m_ok"
        @cancel="handle_vid_c9qmws388m_cancel"
      >
        <!-- begin vid_ltkaoya9in 是否删除此内容？ -->
        <span class="vid_ltkaoya9in"> 是否删除此内容？ </span>
        <!-- end vid_ltkaoya9in 是否删除此内容？ -->
      </a-modal>
      <!-- end vid_c9qmws388m 删除 -->
      <!-- begin vid_qa2d7fnpjg 布局容器_x3wg80zkdz -->
      <a-row class="vid_qa2d7fnpjg" :slots="'4:20'">
        <a-col :span="4">
          <!-- begin vid_9nxy1fed9u 容器_b6idictlfd -->
          <al-box class="vid_9nxy1fed9u">
            <!-- begin vid_jepug5ftkv 布局容器_ogw11psgr7 -->
            <a-row class="vid_jepug5ftkv" :slots="'24'">
              <a-col :span="24">
                <!-- begin vid_a5dg4bwo8r 项目列表 -->
                <span class="vid_a5dg4bwo8r"> 项目列表 </span>
                <!-- end vid_a5dg4bwo8r 项目列表 -->
              </a-col>
            </a-row>
            <!-- end vid_jepug5ftkv 布局容器_ogw11psgr7 -->
            <!-- begin vid_1zdjor27av 容器_iqoevc8i4r -->
            <al-box class="vid_1zdjor27av">
              <!-- begin vid_cgywop81od 输入框_bp7v1gcbs0 -->
              <a-input autocomplete="off" class="vid_cgywop81od" v-model:value="vid_cgywop81od_props.value" :placeholder="'请输入关键词查询'" @change="handle_vid_cgywop81od_change">
                <template #suffix
                  ><span role="img" class="anticon"
                    ><embed
                      style="width: 1em;height:1em;"
                      src="" /></span
                ></template>
              </a-input>
              <!-- end vid_cgywop81od 输入框_bp7v1gcbs0 -->
            </al-box>
            <!-- end vid_1zdjor27av 容器_iqoevc8i4r -->
            <!-- begin vid_lhlgo1rzjy 容器_8o1t7i61g8 -->
            <al-box class="vid_lhlgo1rzjy">
              <!-- begin vid_0wgjhl1sfz 树形控件_树 -->
              <al-tree-extend
                class="vid_0wgjhl1sfz"
                v-model:checkedKeys="vid_0wgjhl1sfz_props.checkedKeys"
                v-model:selectedKeys="vid_0wgjhl1sfz_props.selectedKeys"
                v-model:expandedKeys="vid_0wgjhl1sfz_props.expandedKeys"
                :fieldNames="{'children':'children','title':'name','key':'id','nodeType':'nodeType'}"
                :selectedBackgroundColor="'#EBF1FF'"
                :showLine="true"
                :backgroundColor="'#F5F5F5'"
                :lazyParams="vid_0wgjhl1sfz_props.lazyParams"
                :clickNode="vid_0wgjhl1sfz_props.clickNode"
                :selected="vid_0wgjhl1sfz_props.selected"
                :treeData="vid_0wgjhl1sfz_options()"
                @select="handle_vid_0wgjhl1sfz_select"
                :style="vid_0wgjhl1sfz_style"
              >
              </al-tree-extend>
              <!-- end vid_0wgjhl1sfz 树形控件_树 -->
            </al-box>
            <!-- end vid_lhlgo1rzjy 容器_8o1t7i61g8 -->
          </al-box>
          <!-- end vid_9nxy1fed9u 容器_b6idictlfd -->
        </a-col>
        <a-col :span="20">
          <!-- begin vid_man6tn103k 容器_4msuehqjhz -->
          <al-box class="vid_man6tn103k">
            <!-- begin vid_xgg4smyuq7 容器_yvkv9roqo2 -->
            <al-box class="vid_xgg4smyuq7">
              <!-- begin vid_pqhid1j9xl 我的日报筛选表单容器 -->
              <a-form ref="vid_pqhid1j9xl_ref" class="vid_pqhid1j9xl" :model="h_4si95erbps" :formModel="vid_pqhid1j9xl_props.formModel">
                <!-- begin vid_hos2yxmizc 布局容器_我的日报筛选 -->
                <a-row class="vid_hos2yxmizc" :slots="'6:6:6:6'">
                  <a-col :span="6">
                    <!-- begin vid_e6d6682rca 表单项容器_jmrmfnxxgv -->
                    <a-form-item name="a_b7p5jbyp9o" :rules="h_4si95erbps_rules[`a_b7p5jbyp9o`]" class="vid_e6d6682rca" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
                      <!-- begin vid_laokusa9g6 日期_yjxp5e4q7d -->
                      <a-date-picker
                        class="vid_laokusa9g6"
                        :getPopupContainer="(node) => node.parentNode"
                        v-model:value="h_4si95erbps.a_b7p5jbyp9o"
                        :placeholder="'请选择日期'"
                        :format="'YYYY-MM'"
                        :valueFormat="'YYYY-MM'"
                        :picker="'month'"
                        :showTime="vid_laokusa9g6_props.showTime"
                      >
                      </a-date-picker>
                      <!-- end vid_laokusa9g6 日期_yjxp5e4q7d -->
                      <template #label>
                        <!-- begin vid_r1q8m99fkt 日期选择 -->
                        <span class="vid_r1q8m99fkt"> 日期选择 </span>
                        <!-- end vid_r1q8m99fkt 日期选择 -->
                      </template>
                    </a-form-item>
                    <!-- end vid_e6d6682rca 表单项容器_jmrmfnxxgv -->
                  </a-col>
                  <a-col :span="6">
                    <!-- begin vid_jhwyjzubd8 表单项容器_mhdq0pgt8q -->
                    <a-form-item name="c_ktejjljlxb" :rules="h_4si95erbps_rules[`c_ktejjljlxb`]" class="vid_jhwyjzubd8" :label-col='{"span":5}' :wrapper-col='{"span":19}'>
                      <!-- begin vid_iu9guk8z1g 下拉框_2e3thaphbb -->
                      <a-select
                        class="vid_iu9guk8z1g"
                        :getPopupContainer="(node) => node.parentNode"
                        v-model:value="h_4si95erbps.c_ktejjljlxb"
                        :allowClear="true"
                        :filterOption="false"
                        :showArrow="true"
                        :placeholder="'请选择周'"
                        :selected="vid_iu9guk8z1g_props.selected"
                        :searchValue="vid_iu9guk8z1g_props.searchValue"
                        :options="vid_iu9guk8z1g_options()"
                        @focus="handle_vid_iu9guk8z1g_focus"
                        @change="handle_vid_iu9guk8z1g_change"
                        @search="handle_vid_iu9guk8z1g_search"
                      >
                      </a-select>
                      <!-- end vid_iu9guk8z1g 下拉框_2e3thaphbb -->
                      <template #label>
                        <!-- begin vid_05r1u4nmxg 周 -->
                        <span class="vid_05r1u4nmxg"> 周 </span>
                        <!-- end vid_05r1u4nmxg 周 -->
                      </template>
                    </a-form-item>
                    <!-- end vid_jhwyjzubd8 表单项容器_mhdq0pgt8q -->
                  </a-col>
                  <a-col :span="6">
                    <!-- begin vid_7kivq6lkr0 查询 -->
                    <a-button class="vid_7kivq6lkr0" :type="'primary'" @click="handle_vid_7kivq6lkr0_click"> 查询 </a-button>
                    <!-- end vid_7kivq6lkr0 查询 -->
                    <!-- begin vid_0lxg6f0wv1 重置 -->
                    <a-button class="vid_0lxg6f0wv1" @click="handle_vid_0lxg6f0wv1_click"> 重置 </a-button>
                    <!-- end vid_0lxg6f0wv1 重置 -->
                  </a-col>
                  <a-col :span="6"> </a-col>
                </a-row>
                <!-- end vid_hos2yxmizc 布局容器_我的日报筛选 -->
              </a-form>
              <!-- end vid_pqhid1j9xl 我的日报筛选表单容器 -->
              <!-- begin vid_lqg73ypspz 容器_hji436bexz -->
              <al-box class="vid_lqg73ypspz"> </al-box>
              <!-- end vid_lqg73ypspz 容器_hji436bexz -->
              <!-- begin vid_es8qqkl0xe 容器_bbf6z6856z -->
              <al-box class="vid_es8qqkl0xe">
                <!-- begin vid_6iwz2ocdim 布局容器_1xabkgwyuj -->
                <a-row class="vid_6iwz2ocdim" :slots="'12:12'">
                  <a-col :span="12">
                    <!-- begin vid_dghk1oe6d2 容器_b1gbwli7nf -->
                    <al-box class="vid_dghk1oe6d2">
                      <!-- begin vid_19ogtmwtkw 本周进展列表 -->
                      <span class="vid_19ogtmwtkw"> 本周进展列表 </span>
                      <!-- end vid_19ogtmwtkw 本周进展列表 -->
                    </al-box>
                    <!-- end vid_dghk1oe6d2 容器_b1gbwli7nf -->
                  </a-col>
                  <a-col :span="12">
                    <!-- begin vid_ipdla4ayd4 容器_vsxp8xzvkz -->
                    <al-box class="vid_ipdla4ayd4">
                      <!-- begin vid_t1518w6pxe 新建工作进展 -->
                      <a-button class="vid_t1518w6pxe" :type="'primary'" @click="handle_vid_t1518w6pxe_click"> 新建工作进展 </a-button>
                      <!-- end vid_t1518w6pxe 新建工作进展 -->
                    </al-box>
                    <!-- end vid_ipdla4ayd4 容器_vsxp8xzvkz -->
                  </a-col>
                </a-row>
                <!-- end vid_6iwz2ocdim 布局容器_1xabkgwyuj -->
                <!-- begin vid_kojlvo03hy 项目菜单表格 -->
                <!-- 项目菜单表格 -->
                <a-table
                  class="vid_kojlvo03hy"
                  :totalNumber="vid_kojlvo03hy_props.totalNumber"
                  :bordered="true"
                  :editRowSaveLoading="vid_kojlvo03hy_props.editRowSaveLoading"
                  :sorter="vid_kojlvo03hy_props.sorter"
                  :currentRow="vid_kojlvo03hy_props.currentRow"
                  :selectedRowList="vid_kojlvo03hy_props.selectedRowList"
                  :data-source="vid_kojlvo03hy_options()"
                  @change="handle_vid_kojlvo03hy_change"
                  :columns="vid_kojlvo03hy_columns"
                  :pagination="vid_kojlvo03hy_pagination"
                  row-key="id"
                  @resizeColumn="(w, col) => handleResizeColumn(w, col, 'vid_kojlvo03hy')"
                  :scroll="{ x: 'max-content', y: 'max-content', scrollToFirstRowOnChange: true, }"
                  :row-class-name="(_record, index) => (index % 2 === 1 ? 'table-striped-even' : 'table-striped-odd')"
                >
                  <template #headerCell="{ title, column }">
                    <TableHeaderCell :title="title" :column="column" />
                  </template>
                  <template #bodyCell="{ text, column, record, index }">
                    <!-- 操作列 -->
                    <div v-if="column.dataIndex === 'vid_kojlvo03hy_operation'" class="operation-cell">
                      <!-- 分组 status -->
                      <template v-if="(record.status == '审批中')"> </template>

                      <!-- 默认分组 -->
                      <span v-else>
                        <a-button type="link" @click="handle_vid_kojlvo03hy_clickBtn_4qycpviahw(record)">编辑</a-button>
                        <a-button type="link" @click="handle_vid_kojlvo03hy_clickBtn_2vppb2gdul(record)">删除</a-button>
                      </span>
                    </div>

                    <!-- 序号列 -->
                    <template v-if="column && column.dataIndex === 'vid_kojlvo03hy_serialNumber'">
                      {{ index + 1 }}
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"提交月份"} 列内容 -->
                    <template v-if="column.dataIndex === 'month' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"提交周"} 列内容 -->
                    <template v-if="column.dataIndex === 'week' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"本月总目标"} 列内容 -->
                    <template v-if="column.dataIndex === 'monthGoal' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"本周进展简述"} 列内容 -->
                    <template v-if="column.dataIndex === 'description' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"创建人"} 列内容 -->
                    <template v-if="column.dataIndex === 'createdBy' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"创建时间"} 列内容 -->
                    <template v-if="column.dataIndex === 'createdTime' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"最近修改人"} 列内容 -->
                    <template v-if="column.dataIndex === 'modifiedBy' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"最近修改时间"} 列内容 -->
                    <template v-if="column.dataIndex === 'modifiedTime' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"id"} 列内容 -->
                    <template v-if="column.dataIndex === 'id' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                    <!-- {"type":"value","dataType":"STRING","rawDataType":"STRING","link":"","value":"审批状态"} 列内容 -->
                    <template v-if="column.dataIndex === 'status' && !column.customRender">
                      <text-table-cell
                        :rowData="record"
                        :conditionValueMap="vid_kojlvo03hy_props.boundaryValueMap"
                        :dataSource="vid_kojlvo03hy_props.contentDataSource[column.dataIndex]"
                        :columnsConfig="column"
                        :value="text"
                      />
                    </template>
                  </template>
                </a-table>
                <!-- end vid_kojlvo03hy 项目菜单表格 -->
              </al-box>
              <!-- end vid_es8qqkl0xe 容器_bbf6z6856z -->
            </al-box>
            <!-- end vid_xgg4smyuq7 容器_yvkv9roqo2 -->
          </al-box>
          <!-- end vid_man6tn103k 容器_4msuehqjhz -->
        </a-col>
      </a-row>
      <!-- end vid_qa2d7fnpjg 布局容器_x3wg80zkdz -->
    </a-spin>
  </div>
</template>
<script setup lang="tsx">
  import {
      h, ref, reactive, toRaw, markRaw, watch, computed,
      onBeforeMount, onMounted, onBeforeUnmount, onUnmounted, onActivated, onDeactivated
    } from "vue";
    import { useRoute, useRouter } from 'vue-router';
    const router = useRouter();
    const route = useRoute();
    import { get, post, put, del, request, requestWithHeaders } from '@/utils/http/Axios';
    import { cloneDeep, localGet, merge, getDifferenceArray, traversalTreeStructure, checkCaseCondition, renderStringInTemplate, handleBreadcrumbJump, throttle, permission, getComponentParamsValue } from '@/utils/index';
    import { isNullOrEmpty, isEmptyArr, isNullOrUnDef, isContained, isArray, isEmpty, isObject } from '@/utils/is';
    import dayjs from 'dayjs';
    import { getPagePcChartsDataSourceConvert } from '@/utils/chart';
    import { message, notification, Modal } from 'ant-design-vue'
    import { propertyFormatByNumber, propertyFormatByPercentage, propertyFormatByDate, parseSubFromDataList } from '@/utils/format';
    import colorTheme from '@/design/custom-theme.json';
    
    import UserTableRecords from '@/model/UserTableRecords';
    import { getAppBaseUrl } from '@/utils/index';
    import { sendToken } from "@/hooks/useIframeToken";
    import { useSystemStore } from "@/store/modules/system";
    const systemStore = useSystemStore();
    

  import TextTableCell from '@/components/page/tableCell/text.vue';
  import TooltipTableCell from '@/components/page/tableCell/tooltip.vue';
  import NumberTableCell from '@/components/page/tableCell/number.vue';
  import ProgressTableCell from '@/components/page/tableCell/progress.vue';
  import OptionsTableCell from '@/components/page/tableCell/options.vue';
  import MultipleOptionsTableCell from '@/components/page/tableCell/multipleOptions.vue';
  import DatePickerTableCell from '@/components/page/tableCell/datePicker.vue';
  import RangePickerTableCell from '@/components/page/tableCell/rangePicker.vue';
  import RangeNumberTableCell from '@/components/page/tableCell/rangeNumber.vue';
  import BoolTableCell from '@/components/page/tableCell/bool.vue';
  import TableHeaderCell from '@/components/page/TableHeaderCell.vue';

      // 获取传入的流程ID和组件参数
      const props = defineProps({
            'processInstanceId': {
            type: [String,Number,Boolean],
            default: undefined,
        },
      })
      const immediateWatch = (source, callback) => {
        watch(source, callback, {deep: true,immediate: true })
      }



  /* -------------------------- 属性定义 -------------------------- */

      const setTimeOutList = [];
      const pageLoading = reactive({
        loading: false,
        tip: undefined
      });
      const authInfo = localGet('app-user-store');

    const vid_29phjnk96d_props = reactive({
          show: false,
      type: "success",
      content: "提交成功",
      duration: 3,
  })

    const vid_wi3cq3bxrr_props = reactive({
          show: false,
      type: "error",
      content: undefined,
      duration: 3,
  })

    const vid_ygtoh44tej_props = reactive({
          show: false,
      type: "error",
      content: undefined,
      duration: 3,
  })

    const vid_ji6fye3n26_props = reactive({
          show: false,
      type: "error",
      content: "周报已进入审批，请在撤回或完成审批后再操作",
      duration: 3,
  })

    const vid_rqdrvl0653_props = reactive({
          show: false,
      type: "error",
      content: undefined,
      duration: 3,
  })

    const vid_wu7cuhr9ap_props = reactive({
          show: false,
      type: "error",
      content: undefined,
      duration: 3,
  })

    const vid_rdt3ye86dc_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_s56vueei5e_props = reactive({
          formModel: {"u_qn5akzqkk4":"","c_xnc5a6bd1k":"","u_nkuyc6hl1c":"","f_o6qcrty2gs":""},
  })

    const vid_8pns7v33m5_props = reactive({
          showTime: undefined,
      value: undefined,
  })

    const vid_raw9r13imf_props = reactive({
          selected: {"option":{},"value":"","label":""},
      searchValue: undefined,
      value: undefined,
  })

    const vid_gy5l740dez_props = reactive({
          selected: {"option":{},"value":"","label":""},
      searchValue: undefined,
      value: undefined,
  })

    const vid_5lxdiqxp8a_props = reactive({
          value: undefined,
  })

    const vid_1gapeg71i1_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_p1bc5uikot_props = reactive({
          formModel: {"x_n8lvnhh42o":"","r_phcgfus9nz":"","h_u2pt65y47b":"","o_dxurz7o9dz":""},
  })

    const vid_ziyj99d09s_props = reactive({
          showTime: undefined,
      value: dayjs().format('YYYY-MM-DD'),
  })

    const vid_tnfq4cf6ft_props = reactive({
          selected: {"option":{},"value":"","label":""},
      searchValue: undefined,
      value: undefined,
  })

    const vid_4e40tfpzpy_props = reactive({
          selected: {"option":{},"value":"","label":""},
      searchValue: undefined,
      value: undefined,
  })

    const vid_949icguubm_props = reactive({
          value: "",
  })

    const vid_c9qmws388m_props = reactive({
          visible: false,
      confirmLoading: undefined,
  })

    const vid_pqhid1j9xl_props = reactive({
          formModel: {"c_ktejjljlxb":"","a_b7p5jbyp9o":""},
  })

    const vid_iu9guk8z1g_props = reactive({
          selected: {"option":{},"value":"","label":""},
      searchValue: undefined,
      value: undefined,
  })

    const vid_laokusa9g6_props = reactive({
          showTime: undefined,
      value: "",
  })

    const vid_kojlvo03hy_props = reactive({
          systemSort: [],
      sorter: {},
      editRowSaveLoading: {},
      currentRow: {"month":"","week":"","monthGoal":"","description":"","createdBy":"","createdTime":"","modifiedBy":"","modifiedTime":"","id":"","status":""},
      selectedRowList: {"parentName":[],"createTime":[],"updateTime":[],"projectName":[],"projectId":[],"parentId":[],"custom1":[],"custom2":[],"custom3":[],"custom4":[],"custom5":[],"custom6":[],"custom7":[],"custom8":[],"month":[],"week":[],"monthGoal":[],"description":[],"createdBy":[],"createdTime":[],"modifiedBy":[],"modifiedTime":[],"id":[],"status":[]},
      totalNumber: undefined,
      rt_tableConfig: {"layout":{"showHeader":true,"sticky":false,"operationColumnFixed":"right"},"pagination":{"current":1,"pageSizeOptions":"10,20,30,40","enable":true,"showTotal":true,"hideOnSinglePage":false,"pageSize":"20","simple":false,"sync":true,"showQuickJumper":true,"showSizeChanger":false},"scroll":{"x":"max-content","y":"max-content","scrollToFirstRowOnChange":true},"style":{"contentStyle":{"borderColor":"#D9D9D9","enableContentStyle":true,"fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"evenLineBackColor":"#F8FAFC","textWeight":"400","fontSize":14,"oddLineBackColor":"#FFFFFF","textColor":"#262626"},"paginationStyle":{"layout":"bottomRight","size":"default"},"headerStyle":{"borderColor":"#D9D9D9","backgroundColor":"#3875FF","fontFamily":"arial, helvetica, \"microsoft yahei\"","lintHeight":40,"borderWidth":1,"textWeight":"600","fontSize":14,"enableTextStyle":true,"textColor":"#FFFFFF"}},"basic":{"rowSelection":false,"rowEdit":{"cancelText":"取消","editText":"编辑","saveText":"保存"},"title":"","showSequenceNumber":false,"rowKey":"id"}},
      columnList: [
          {
            id: 'vzof6o3xg3',
            dataIndex: 'month',
            headerComment: false,
            title: '提交月份',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '120px',
            resizable: true,
          },
          {
            id: 'wlbjozpc8z',
            dataIndex: 'week',
            headerComment: false,
            title: '提交周',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '100px',
            resizable: true,
          },
          {
            id: 'ammqvimkkp',
            dataIndex: 'monthGoal',
            headerComment: false,
            title: '本月总目标',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '300px',
            resizable: true,
          },
          {
            id: '9n91pzv9v7',
            dataIndex: 'description',
            headerComment: false,
            title: '本周进展简述',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '500px',
            resizable: true,
          },
          {
            id: '4i9xt1zs35',
            dataIndex: 'status',
            headerComment: false,
            title: '审批状态',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '100px',
            resizable: true,
          },
          {
            id: 'ojhw5iufi9',
            dataIndex: 'createdBy',
            headerComment: false,
            title: '创建人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '100px',
            resizable: true,
          },
          {
            id: '5nno4t6f51',
            dataIndex: 'createdTime',
            headerComment: false,
            title: '创建时间',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '170px',
            resizable: true,
          },
          {
            id: 'pho56ht9tr',
            dataIndex: 'modifiedBy',
            headerComment: false,
            title: '最近修改人',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '150px',
            resizable: true,
          },
          {
            id: 'rwxv96z3st',
            dataIndex: 'modifiedTime',
            headerComment: false,
            title: '最近修改时间',
            ellipsis: false,
            headerOverflow: 'ellipsis',
            contentAlign: 'left',
            customHeaderCell: () => ({ style: { 'text-align': 'left' } }),
            rowEditConditions: [],
            contentType: 'TEXT',
            contentConfig: {"format":null,"defaultStyle":null,"conditionStyle":[],"dataSourceConfig":null,"boolConfig":"collection"},
            // 使用插槽的列，设置单元格padding为0，padding样式在内容插槽中已加，以便内容插槽设置背景色时可以占满整个单元格；该样式会在计算属性生成列配置时加入customCell
            customCellStyle: { padding: 0 },
            width: '180px',
            resizable: true,
          },
          {
            dataIndex: 'vid_kojlvo03hy_operation',
            title: '操作',
            fixed: 'right',
          },
        ],
      rawColumnList: [],
      // 进行行合并所需的排序规则，必须将其加到排序字段的前面，以实现合并单元格
      rowMergeSort: [],
      // 完整的排序规则：需要将行合并的排序规则和排序字段的排序规则赋给该属性；调接口时会使用其作为排序条件
      systemSort: [],
      // 条件格式需要的边界值映射：key为边界值id，value为边界值数据
      boundaryValueMap: {},
      // 表格单元格内容渲染需要的外部数据源：key为列，value为该列单元格的外部数据源配置
      contentDataSource: {},
  })

    const vid_cgywop81od_props = reactive({
          value: undefined,
  })

    const vid_0wgjhl1sfz_props = reactive({
          lazyParams: undefined,
      selected: {"singleValue":"","title":[],"value":[],"option":[],"singleLabel":""},
      clickNode: {"nodeTitle":"","nodeKey":"","nodeParentKey":""},
      checkedKeys: [],
      selectedKeys: [],
      expandedKeys: [],
  })
  // ---------------------------- 定义模型数据 ----------------------------

    const y_bsgawpe15k = reactive({})


    const y_9a3mkqlyw4 = reactive({"x_n8lvnhh42o":dayjs().format("YYYY-MM-DD"),"o_dxurz7o9dz":""})


    const h_4si95erbps = reactive({"a_b7p5jbyp9o":""})

    // ============================ 定义模型数据 ============================





    const y_bsgawpe15k_rules = reactive({
          u_qn5akzqkk4: [
          { required: true, message: '请选择周报提交日期!', trigger: 'blur' },
      ],
      c_xnc5a6bd1k: [
          { required: true, message: '请选择项目/技术负责人!', trigger: 'blur' },
      ],
      u_nkuyc6hl1c: [
          { required: true, message: '请选择项目经理/产品经理!', trigger: 'blur' },
      ],
      f_o6qcrty2gs: [
          { required: true, message: '请输入本周进展简述!', trigger: 'blur' },
      ],
    })






    const y_9a3mkqlyw4_rules = reactive({
          x_n8lvnhh42o: [
          { required: true, message: '请选择周报提交日期!', trigger: 'blur' },
      ],
      r_phcgfus9nz: [
          { required: true, message: '请选择项目/技术负责人!', trigger: 'blur' },
      ],
      h_u2pt65y47b: [
          { required: true, message: '请选择项目经理/产品经理!', trigger: 'blur' },
      ],
      o_dxurz7o9dz: [
          { required: true, message: '请输入本周进展简述!', trigger: 'blur' },
      ],
    })



    const h_4si95erbps_rules = reactive({


    })


      // 处理校验
      const setSubFormName =(parentInfo, name)=>{
        return [parentInfo.parents, parentInfo.cycleIndex, name];
      }


    const vid_raw9r13imf_options_raw = ref([])

      const vid_raw9r13imf_options = computed(() => {
        return (dataSource = vid_raw9r13imf_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          label: item.name,
          disabled: !!item.disabled
            }
          })
        }
      })



    const vid_gy5l740dez_options_raw = ref([])

      const vid_gy5l740dez_options = computed(() => {
        return (dataSource = vid_gy5l740dez_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          label: item.name,
          disabled: !!item.disabled
            }
          })
        }
      })



    const vid_tnfq4cf6ft_options_raw = ref([])

      const vid_tnfq4cf6ft_options = computed(() => {
        return (dataSource = vid_tnfq4cf6ft_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          label: item.name,
          disabled: !!item.disabled
            }
          })
        }
      })



    const vid_4e40tfpzpy_options_raw = ref([])

      const vid_4e40tfpzpy_options = computed(() => {
        return (dataSource = vid_4e40tfpzpy_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.name,
          label: item.name,
          disabled: !!item.disabled
            }
          })
        }
      })



    const vid_iu9guk8z1g_options_raw = ref([])

      const vid_iu9guk8z1g_options = computed(() => {
        return (dataSource = vid_iu9guk8z1g_options_raw.value)=>{
          return (dataSource || []).map(item => {
            return {
              ...item,
              value: item.value,
          label: item.label,
          disabled: !!item.disabled
            }
          })
        }
      })



    const vid_kojlvo03hy_options_raw = ref([])

      const vid_kojlvo03hy_options = computed(() => {
        return () => vid_kojlvo03hy_options_raw.value
      })



    const vid_0wgjhl1sfz_options_raw = ref([])

      const vid_0wgjhl1sfz_options = computed(() => {
            return () => vid_0wgjhl1sfz_options_raw.value
          })

  // 图表组件 下拉框plName 条件格式数据依赖
  const vid_raw9r13imf_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框pmName 条件格式数据依赖
  const vid_gy5l740dez_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框plName 条件格式数据依赖
  const vid_tnfq4cf6ft_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框pmName 条件格式数据依赖
  const vid_4e40tfpzpy_chartConditionDependencyMap = ref({
  })
  // 图表组件 下拉框_2e3thaphbb 条件格式数据依赖
  const vid_iu9guk8z1g_chartConditionDependencyMap = ref({
  })
  // 图表组件 项目菜单表格 条件格式数据依赖
  const vid_kojlvo03hy_chartConditionDependencyMap = ref({
  })
  // 图表组件 树形控件_树 条件格式数据依赖
  const vid_0wgjhl1sfz_chartConditionDependencyMap = ref({
  })
  /* ========================== 属性定义 ========================== */


  /* -------------------------- 元素数据引用 -------------------------- */
  // 组件 表单容器_jtxe3m9gbz ref 的引用
  const vid_s56vueei5e_ref = ref(null);
  // 组件 表单容器_fguxemxo0k ref 的引用
  const vid_p1bc5uikot_ref = ref(null);
  // 组件 我的日报筛选表单容器 ref 的引用
  const vid_pqhid1j9xl_ref = ref(null);

  /* ========================== 元素数据引用 ========================== */


  /* -------------------------- 页面数据 -------------------------- */

    // 页面数据 本周工作进展列表
    const dataConnector_conn_zm0qcjeanu_response = ref();
    const dataConnector_conn_zm0qcjeanu = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            treeId: vid_0wgjhl1sfz_props?.selected.singleValue,
          startDateTime: null,
          week: vid_iu9guk8z1g_props?.selected.value,
          treeName: vid_0wgjhl1sfz_props?.selected.singleLabel,
          pageNo: vid_kojlvo03hy_props?.rt_tableConfig.pagination.current,
          dateOption: h_4si95erbps.a_b7p5jbyp9o,
          pageSize: vid_kojlvo03hy_props?.rt_tableConfig.pagination.pageSize
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/list';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_zm0qcjeanu_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 本周工作进展删除
    const dataConnector_conn_a5bmxnfj6o_response = ref();
    const dataConnector_conn_a5bmxnfj6o = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/del/{id}';
          // 替换url中的变量
          url = url.replace('{id}', String(vid_kojlvo03hy_props?.currentRow.id))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_a5bmxnfj6o_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 本周工作进展树
    const dataConnector_conn_j6w64h2xf2_response = ref();
    const dataConnector_conn_j6w64h2xf2 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            monthQuery: null,
          name: vid_cgywop81od_props?.value
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/tree';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_j6w64h2xf2_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 本周工作进展详情
    const dataConnector_conn_9of5p3ed89_response = ref();
    const dataConnector_conn_9of5p3ed89 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/detail/{id}';
          // 替换url中的变量
          url = url.replace('{id}', String(vid_kojlvo03hy_props?.currentRow.id))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_9of5p3ed89_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 本周工作进展新增
    const dataConnector_conn_007y9nk0co_response = ref();
    const dataConnector_conn_007y9nk0co = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            modifiedTime: null,
          week: null,
          description: y_9a3mkqlyw4.o_dxurz7o9dz,
          submissionDate: y_9a3mkqlyw4.x_n8lvnhh42o,
          pmName: vid_4e40tfpzpy_props?.selected.label,
          delFlag: null,
          deletedBy: null,
          plName: vid_tnfq4cf6ft_props?.selected.label,
          instanceId: null,
          monthGoal: null,
          modifiedById: null,
          month: null,
          createdBy: null,
          createdTime: null,
          deletedById: null,
          modifiedBy: null,
          startTime: null,
          endTime: null,
          id: null,
          deletedTime: null,
          projectName: vid_0wgjhl1sfz_props?.selected.singleLabel,
          projectId: vid_0wgjhl1sfz_props?.selected.singleValue,
          createdById: null,
          status: null
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/add';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_007y9nk0co_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 本周工作进展修改
    const dataConnector_conn_ihm633888y_response = ref();
    const dataConnector_conn_ihm633888y = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            modifiedTime: null,
          week: null,
          description: y_bsgawpe15k.f_o6qcrty2gs,
          submissionDate: y_bsgawpe15k.u_qn5akzqkk4,
          pmName: y_bsgawpe15k.u_nkuyc6hl1c,
          delFlag: null,
          deletedBy: null,
          plName: y_bsgawpe15k.c_xnc5a6bd1k,
          instanceId: null,
          monthGoal: null,
          modifiedById: null,
          month: null,
          createdBy: null,
          createdTime: null,
          deletedById: null,
          modifiedBy: null,
          startTime: null,
          endTime: null,
          id: vid_kojlvo03hy_props?.currentRow.id,
          deletedTime: null,
          projectName: null,
          projectId: vid_0wgjhl1sfz_props?.selected.singleValue,
          createdById: null,
          status: null
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/update';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_ihm633888y_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 月的周数量
    const dataConnector_conn_bqyc3o812y_response = ref();
    const dataConnector_conn_bqyc3o812y = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            treeId: null,
          week: null,
          partnershipOrCustomerName: null,
          projectCode: null,
          treeName: null,
          pageNo: null,
          dateOption: h_4si95erbps.a_b7p5jbyp9o,
          pageSize: null
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2//built-in-system-ppm/weekly/month-week';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_bqyc3o812y_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 查询负责人和参与人的下拉框
    const dataConnector_conn_or6343ltg5_response = ref();
    const dataConnector_conn_or6343ltg5 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/pmgf/get/allUser';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_or6343ltg5_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 本周工作进展校验
    const dataConnector_conn_r6r45xzon0_response = ref();
    const dataConnector_conn_r6r45xzon0 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {
            modifiedTime: null,
          week: null,
          description: null,
          pmName: null,
          delFlag: null,
          deletedBy: null,
          plName: null,
          instanceId: null,
          monthGoal: null,
          modifiedById: null,
          month: null,
          createdBy: null,
          createdTime: null,
          deletedById: null,
          modifiedBy: null,
          startTime: null,
          endTime: null,
          id: null,
          deletedTime: null,
          projectName: vid_0wgjhl1sfz_props?.selected.singleLabel,
          projectId: vid_0wgjhl1sfz_props?.selected.singleValue,
          createdById: null,
          status: null
          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/judge';
          // 替换url中的变量

          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return post(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_r6r45xzon0_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


    // 页面数据 本周工作进展判断审批状态
    const dataConnector_conn_925ber7fc2_response = ref();
    const dataConnector_conn_925ber7fc2 = async (additionParams = {}) => {
        const exec = async () => {
          // 获取参数
          const params = {

          };

          // 注入附加的参数
          try {
            merge(params, additionParams);
          } catch (error) {
            console.log(error)
          }

          // 判断加载提示

          // 处理URL
          let url = '/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/judge_approval_status/{id}';
          // 替换url中的变量
          url = url.replace('{id}', String(vid_kojlvo03hy_props?.currentRow.id))
          // 排除空参数  日期组件重置后的空参数是[null] 或者[undefined]
          Object.keys(params).forEach(key=>{ if(params[key] === null){ delete params[key] }else if( Object.prototype.toString.call(params[key]) === '[object Object]' ){ Object.keys(params[key]).forEach(childKey=>{ if(params[key][childKey] === null || (Array.isArray(params[key][childKey]) && params[key][childKey].length === 1 && isNullOrUnDef(params[key][childKey]?.[0]))){ delete params[key][childKey] }}) } });
          return get(url, params, {
                headers: undefined
              }).then(async (resp) => {
            dataConnector_conn_925ber7fc2_response.value = resp;

            return resp;
          }).catch(async (e) => {


            return Promise.reject(e);
          }).finally(async () => {


          })
        }

          return await exec()

    }


  /* ========================== 页面数据 ========================== */



  /* -------------------------- 响应 -------------------------- */

    // 页面交互 新建
    const response_6a5g67zy5n = async () => {

    const branchList = [{
          conditionType: 'NOT_EQUALS',
          value: 200,
          exec: async () => {
              vid_wi3cq3bxrr_props.show = true;
          }
      }];

    const matchBranch = branchList.find(item => checkCaseCondition(dataConnector_conn_007y9nk0co_response?.value?.code, item.conditionType, item.value));
    // 匹配到的分支
    if (matchBranch) {
      matchBranch.exec();
      return;
    }
    // 默认分支动作
    vid_1gapeg71i1_props.visible = false;
  vid_29phjnk96d_props.show = true;
  await dataConnector_conn_zm0qcjeanu()
      // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
    try {
  await vid_p1bc5uikot_ref.value?.resetFields();
    } catch (error) { console.log(error);}

    }


    // 页面交互 编辑
    const response_kqdseryjhv = async () => {

    const branchList = [{
          conditionType: 'NOT_EQUALS',
          value: 200,
          exec: async () => {
              vid_ygtoh44tej_props.show = true;
          }
      }];

    const matchBranch = branchList.find(item => checkCaseCondition(dataConnector_conn_ihm633888y_response?.value?.code, item.conditionType, item.value));
    // 匹配到的分支
    if (matchBranch) {
      matchBranch.exec();
      return;
    }
    // 默认分支动作
    vid_rdt3ye86dc_props.visible = false;
  vid_29phjnk96d_props.show = true;
  await dataConnector_conn_zm0qcjeanu()
      // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
    try {
  await vid_s56vueei5e_ref.value?.resetFields();
    } catch (error) { console.log(error);}

    }


    // 页面交互 删除
    const response_f86xkmxd7z = async () => {

    const branchList = [{
          conditionType: 'NOT_EQUALS',
          value: 200,
          exec: async () => {
              vid_rqdrvl0653_props.show = true;
          }
      }];

    const matchBranch = branchList.find(item => checkCaseCondition(dataConnector_conn_a5bmxnfj6o_response?.value?.code, item.conditionType, item.value));
    // 匹配到的分支
    if (matchBranch) {
      matchBranch.exec();
      return;
    }
    // 默认分支动作
    vid_29phjnk96d_props.show = true;
  vid_c9qmws388m_props.visible = false;
  await dataConnector_conn_zm0qcjeanu()

    }


    // 页面交互 判断删除是否能点击
    const response_yahkisbocw = async () => {

    const branchList = [{
          conditionType: 'NOT_EQUALS',
          value: 200,
          exec: async () => {
              vid_ji6fye3n26_props.show = true;
          }
      }];

    const matchBranch = branchList.find(item => checkCaseCondition(dataConnector_conn_925ber7fc2_response?.value?.code, item.conditionType, item.value));
    // 匹配到的分支
    if (matchBranch) {
      matchBranch.exec();
      return;
    }
    // 默认分支动作
    vid_c9qmws388m_props.visible = true;

    }


    // 页面交互 判断编辑是否能点击
    const response_dwn26lho1y = async () => {

    const branchList = [{
          conditionType: 'NOT_EQUALS',
          value: 200,
          exec: async () => {
              vid_ji6fye3n26_props.show = true;
          }
      }];

    const matchBranch = branchList.find(item => checkCaseCondition(dataConnector_conn_925ber7fc2_response?.value?.code, item.conditionType, item.value));
    // 匹配到的分支
    if (matchBranch) {
      matchBranch.exec();
      return;
    }
    // 默认分支动作
    await dataConnector_conn_9of5p3ed89()
  await dataConnector_conn_or6343ltg5()
  vid_rdt3ye86dc_props.visible = true;

    }

  /* ========================== 响应 ========================== */


  /* -------------------------- 函数 -------------------------- */

    // 自定义函数 判断树
    const customFunction_pu5orhkszi =  (params) => {
      let addBtn = document.querySelector('.vid_t1518w6pxe')
  console.log(vid_0wgjhl1sfz_props.selected,'树文字');
  const id = vid_0wgjhl1sfz_props?.selected.singleValue

  get(`/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/check_tree_node/${id}`).then(data=>{
      if(data.data==='MENU'){
          addBtn.disabled = true
      }else{
          addBtn.disabled = false
      }
  })

    }


    // 自定义函数 新建按钮
    const customFunction_3x4os489j9 = async (params) => {
      if(vid_0wgjhl1sfz_props.selectedKeys.length<1){
      message.info('请选择项目')
    return Promise.reject()
    }

  post('/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/permission_judge').then(res => {
        if (res.data) {
          return Promise.resolve();
        } else {
          message.info('无权限进行周报操作');
          return Promise.reject()
        }
      })
    }


    // 自定义函数 新建按钮控制
    const customFunction_zdc1xn0he8 =  (params) => {
      let addBtn = document.querySelector('.vid_ettmq0qz5b')
  console.log(addBtn,'addBtn')
  addBtn.disabled = true
    }


    // 自定义函数 新建按钮放开
    const customFunction_wso4atf88w =  (params) => {
      let addBtn = document.querySelector('.vid_ettmq0qz5b')
  addBtn.disabled = false
    }


    // 自定义函数 编辑按钮控制
    const customFunction_uij50txskh =  (params) => {
      let editBtn = document.querySelector('.vid_rrwhg6uosl')
  editBtn.disabled = true
    }


    // 自定义函数 编辑按钮放开
    const customFunction_ojzjb90a07 =  (params) => {
      let editBtn = document.querySelector('.vid_rrwhg6uosl')
  editBtn.disabled = false
    }


    // 自定义函数 周报操作列权限判断
    const customFunction_ydvw60xr9r =  (params) => {
      post('/solution-ppm/api/v2/built-in-system-ppm/parameter/now-week-evolve/permission_judge').then(res => {
        if (res.data) {
          return Promise.resolve();
        } else {
          message.info('无权限进行周报操作');
          return Promise.reject()
        }
      })
    }

  /* ========================== 函数 ========================== */


  /* -------------------------- 页面参数 -------------------------- */

    const pageParameter_state = reactive({
        'processInstanceId': props.processInstanceId ?? route.query.processInstanceId,
    })

  /* ========================== 页面参数 ========================== */


  /* -------------------------- 组件事件处理方法 -------------------------- */

    // ---------------------------- 组件数据同步 ----------------------------
    // 处理 全局提示_新建失败 的 content 属性关联
  watch(() => dataConnector_conn_007y9nk0co_response?.value?.message,
    () => {
      let dataList = dataConnector_conn_007y9nk0co_response?.value?.message

      vid_wi3cq3bxrr_props.content = dataList;
    },
    {deep: true})
  // 处理 全局提示_编辑失败 的 content 属性关联
  watch(() => dataConnector_conn_ihm633888y_response?.value?.message,
    () => {
      let dataList = dataConnector_conn_ihm633888y_response?.value?.message

      vid_ygtoh44tej_props.content = dataList;
    },
    {deep: true})
  // 处理 全局提示删除失败 的 content 属性关联
  watch(() => dataConnector_conn_a5bmxnfj6o_response?.value?.message,
    () => {
      let dataList = dataConnector_conn_a5bmxnfj6o_response?.value?.message

      vid_rqdrvl0653_props.content = dataList;
    },
    {deep: true})
  // 处理 新建校验全局提示_kac0t5vss1 的 content 属性关联
  watch(() => dataConnector_conn_r6r45xzon0_response?.value?.message,
    () => {
      let dataList = dataConnector_conn_r6r45xzon0_response?.value?.message

      vid_wu7cuhr9ap_props.content = dataList;
    },
    {deep: true})
  // 处理 日期submissionDate 的 value 属性关联
  watch(() => dataConnector_conn_9of5p3ed89_response?.value?.data?.submissionDate,
    () => {
      let dataList = dataConnector_conn_9of5p3ed89_response?.value?.data?.submissionDate

      y_bsgawpe15k.u_qn5akzqkk4 = dataList;
    },
    {deep: true})
  // 处理 下拉框plName 的 value 属性关联
  watch(() => dataConnector_conn_9of5p3ed89_response?.value?.data?.plName,
    () => {
      let dataList = dataConnector_conn_9of5p3ed89_response?.value?.data?.plName

      y_bsgawpe15k.c_xnc5a6bd1k = dataList;
    },
    {deep: true})


  // 处理 下拉框plName 的 systemList 属性关联
  watch(() => dataConnector_conn_or6343ltg5_response?.value?.data?.userDtoList,
    () => {
      let dataList = dataConnector_conn_or6343ltg5_response?.value?.data?.userDtoList

      vid_raw9r13imf_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 下拉框pmName 的 value 属性关联
  watch(() => dataConnector_conn_9of5p3ed89_response?.value?.data?.pmName,
    () => {
      let dataList = dataConnector_conn_9of5p3ed89_response?.value?.data?.pmName

      y_bsgawpe15k.u_nkuyc6hl1c = dataList;
    },
    {deep: true})


  // 处理 下拉框pmName 的 systemList 属性关联
  watch(() => dataConnector_conn_or6343ltg5_response?.value?.data?.userDtoList,
    () => {
      let dataList = dataConnector_conn_or6343ltg5_response?.value?.data?.userDtoList

      vid_gy5l740dez_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 文本域description 的 value 属性关联
  watch(() => dataConnector_conn_9of5p3ed89_response?.value?.data?.description,
    () => {
      let dataList = dataConnector_conn_9of5p3ed89_response?.value?.data?.description

      y_bsgawpe15k.f_o6qcrty2gs = dataList;
    },
    {deep: true})
  // 处理 下拉框plName 的 systemList 属性关联
  watch(() => dataConnector_conn_or6343ltg5_response?.value?.data?.userDtoList,
    () => {
      let dataList = dataConnector_conn_or6343ltg5_response?.value?.data?.userDtoList

      vid_tnfq4cf6ft_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 下拉框pmName 的 systemList 属性关联
  watch(() => dataConnector_conn_or6343ltg5_response?.value?.data?.userDtoList,
    () => {
      let dataList = dataConnector_conn_or6343ltg5_response?.value?.data?.userDtoList

      vid_4e40tfpzpy_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 下拉框_2e3thaphbb 的 systemList 属性关联
  watch(() => dataConnector_conn_bqyc3o812y_response?.value?.data,
    () => {
      let dataList = dataConnector_conn_bqyc3o812y_response?.value?.data

      vid_iu9guk8z1g_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 项目菜单表格 的 systemList 属性关联
  watch(() => dataConnector_conn_zm0qcjeanu_response?.value?.data?.dataList,
    () => {
      let dataList = dataConnector_conn_zm0qcjeanu_response?.value?.data?.dataList

      // 处理零代码生成的表格数据，将dataList展开
      const data = dataConnector_conn_zm0qcjeanu_response?.value?.data;
      if (data && 'dataList' in data && 'columnList' in data) {
        const newDataList = parseSubFromDataList(dataList);
        if (newDataList.length) {
          dataList = newDataList;
        }
      }

      vid_kojlvo03hy_options_raw.value = dataList;
    },
    {deep: true})
  // 处理 项目菜单表格 的 totalNumber 属性关联
  watch(() => dataConnector_conn_zm0qcjeanu_response?.value?.data?.totalElements,
    () => {
      let dataList = dataConnector_conn_zm0qcjeanu_response?.value?.data?.totalElements

      vid_kojlvo03hy_props.totalNumber = dataList;
    },
    {deep: true})
  // 处理 树形控件_树 的 systemList 属性关联
  watch(() => dataConnector_conn_j6w64h2xf2_response?.value?.data,
    () => {
      let dataList = dataConnector_conn_j6w64h2xf2_response?.value?.data

      vid_0wgjhl1sfz_options_raw.value = dataList;
    },
    {deep: true})
    // ============================ 组件数据同步 ============================

  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_rdt3ye86dc_ok = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  await vid_s56vueei5e_ref.value?.validateFields();
  await dataConnector_conn_ihm633888y()
  response_kqdseryjhv()
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_rdt3ye86dc_cancel = throttle(async (...params) => {
  vid_rdt3ye86dc_props.visible = false;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_raw9r13imf_change = throttle(async (...params) => {
  const [,option] = params;
  vid_raw9r13imf_props.selected.label = option?.label;
  vid_raw9r13imf_props.selected.value = option?.value;
  vid_raw9r13imf_props.selected.option = option;
  vid_raw9r13imf_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_raw9r13imf_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_raw9r13imf_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_gy5l740dez_change = throttle(async (...params) => {
  const [,option] = params;
  vid_gy5l740dez_props.selected.label = option?.label;
  vid_gy5l740dez_props.selected.value = option?.value;
  vid_gy5l740dez_props.selected.option = option;
  vid_gy5l740dez_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_gy5l740dez_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_gy5l740dez_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_1i3z4r77bp_click = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  try {
  await vid_s56vueei5e_ref.value?.resetFields();
  } catch (error) { console.log(error);}
  vid_rdt3ye86dc_props.visible = false;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_rrwhg6uosl_click = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  await vid_s56vueei5e_ref.value?.validateFields();
  customFunction_uij50txskh();
  await dataConnector_conn_ihm633888y()
  response_kqdseryjhv()
  customFunction_ojzjb90a07();
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_1gapeg71i1_cancel = throttle(async (...params) => {
  vid_1gapeg71i1_props.visible = false;
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  try {
  await vid_p1bc5uikot_ref.value?.resetFields();
  } catch (error) { console.log(error);}
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_1gapeg71i1_ok = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  await vid_p1bc5uikot_ref.value?.validateFields();
  await dataConnector_conn_007y9nk0co()
  response_6a5g67zy5n()
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_tnfq4cf6ft_change = throttle(async (...params) => {
  const [,option] = params;
  vid_tnfq4cf6ft_props.selected.label = option?.label;
  vid_tnfq4cf6ft_props.selected.value = option?.value;
  vid_tnfq4cf6ft_props.selected.option = option;
  vid_tnfq4cf6ft_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_tnfq4cf6ft_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_tnfq4cf6ft_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_4e40tfpzpy_change = throttle(async (...params) => {
  const [,option] = params;
  vid_4e40tfpzpy_props.selected.label = option?.label;
  vid_4e40tfpzpy_props.selected.value = option?.value;
  vid_4e40tfpzpy_props.selected.option = option;
  vid_4e40tfpzpy_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_4e40tfpzpy_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_4e40tfpzpy_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_fvyhl9q8vl_click = throttle(async (...params) => {
  vid_1gapeg71i1_props.visible = false;
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  try {
  await vid_p1bc5uikot_ref.value?.resetFields();
  } catch (error) { console.log(error);}
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_ettmq0qz5b_click = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  await vid_p1bc5uikot_ref.value?.validateFields();
  customFunction_zdc1xn0he8();
  await dataConnector_conn_007y9nk0co()
  response_6a5g67zy5n()
  customFunction_wso4atf88w();
  }, 500)
  /**
  * 处理元素 对话框 的 ok 事件
  */
  let handle_vid_c9qmws388m_ok = throttle(async (...params) => {
  await dataConnector_conn_a5bmxnfj6o()
  response_f86xkmxd7z()
  }, 500)
  /**
  * 处理元素 对话框 的 cancel 事件
  */
  let handle_vid_c9qmws388m_cancel = throttle(async (...params) => {
  vid_c9qmws388m_props.visible = false;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_7kivq6lkr0_click = throttle(async (...params) => {
  await dataConnector_conn_zm0qcjeanu()
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_0lxg6f0wv1_click = throttle(async (...params) => {
  // 这里组件可能还未初始化， 这里使用可选链的形式进行函数触发
  try {
  await vid_pqhid1j9xl_ref.value?.resetFields();
  } catch (error) { console.log(error);}
  await dataConnector_conn_zm0qcjeanu()
  }, 500)
  /**
  * 处理元素 下拉框 的 focus 事件
  */
  let handle_vid_iu9guk8z1g_focus = throttle(async (...params) => {
  await dataConnector_conn_bqyc3o812y()
  }, 500)
  /**
  * 处理元素 下拉框 的 change 事件
  */
  let handle_vid_iu9guk8z1g_change = throttle(async (...params) => {
  const [,option] = params;
  vid_iu9guk8z1g_props.selected.label = option?.label;
  vid_iu9guk8z1g_props.selected.value = option?.value;
  vid_iu9guk8z1g_props.selected.option = option;
  vid_iu9guk8z1g_props.selected.optionArray = [{ label: option?.label, value: option?.value }];
  }, 500)
  /**
  * 处理元素 下拉框 的 search 事件
  */
  let handle_vid_iu9guk8z1g_search = throttle(async (...params) => {
  const [searchValue] = params;
  vid_iu9guk8z1g_props.searchValue = searchValue;
  }, 500)
  /**
  * 处理元素 按钮 的 click 事件
  */
  let handle_vid_t1518w6pxe_click = throttle(async (...params) => {
  await customFunction_3x4os489j9();
  await dataConnector_conn_r6r45xzon0()
  vid_1gapeg71i1_props.visible = true;
  await dataConnector_conn_or6343ltg5()
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_4qycpviahw 事件
  */
  let handle_vid_kojlvo03hy_clickBtn_4qycpviahw = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_kojlvo03hy_props.currentRow = record;
  customFunction_ydvw60xr9r();
  await dataConnector_conn_925ber7fc2()
  response_dwn26lho1y()
  }, 500)
  /**
  * 处理元素 表格 的 clickBtn_2vppb2gdul 事件
  */
  let handle_vid_kojlvo03hy_clickBtn_2vppb2gdul = throttle(async (...params) => {
  // 存储表格当前行数据
  const [record] = params;
  vid_kojlvo03hy_props.currentRow = record;
  customFunction_ydvw60xr9r();
  await dataConnector_conn_925ber7fc2()
  response_yahkisbocw()
  }, 500)
  /**
  * 处理元素 表格 的 change 事件
  */
  let handle_vid_kojlvo03hy_change = throttle(async (...params) => {
  // 处理分页器相关数据
  const [pagination, filters, sorter] = params;
  const { current, pageSize } = pagination;
  vid_kojlvo03hy_props.rt_tableConfig.pagination.current = current;
  vid_kojlvo03hy_props.rt_tableConfig.pagination.pageSize = pageSize;
  // 处理排序相关数据
  const { field, order } = sorter;
  const sorterList = [...vid_kojlvo03hy_props.rowMergeSort];
  let sorterValue = {};
  if (order === 'descend') {
  sorterValue = { order: field, direction: 'DESC' }
  } else if (order === 'ascend') {
  sorterValue = { order: field, direction: 'ASC' }
  }
  sorterList.push(sorterValue);
  vid_kojlvo03hy_props.systemSort = sorterList;
  vid_kojlvo03hy_props.sorter = sorterValue;
  await dataConnector_conn_zm0qcjeanu()
  }, 500)
  /**
  * 处理元素 输入框 的 change 事件
  */
  let handle_vid_cgywop81od_change = throttle(async (...params) => {
  await dataConnector_conn_j6w64h2xf2()
  }, 500)
  /**
  * 处理元素 树形控件 的 select 事件
  */
  let handle_vid_0wgjhl1sfz_select = throttle(async (...params) => {
  const [selectedKeys, e] = params;
  const { selectedNodes = [], node = {} } = e, [singleValue] = selectedKeys, [singleNode] = selectedNodes;
  const { parent = {} } = node;
  vid_0wgjhl1sfz_props.selected.title = selectedNodes.map((item) => item.name) ?? [];
  vid_0wgjhl1sfz_props.selected.value = selectedKeys;
  vid_0wgjhl1sfz_props.selected.option = selectedNodes;
  vid_0wgjhl1sfz_props.selected.singleValue = singleValue;
  vid_0wgjhl1sfz_props.selected.singleLabel = singleNode?.title ?? '';
  // 存储树节点数据
  vid_0wgjhl1sfz_props.clickNode.nodeParentKey = parent?.key ?? node?.key ?? '';
  vid_0wgjhl1sfz_props.clickNode.nodeKey = node?.key ?? '';
  vid_0wgjhl1sfz_props.clickNode.nodeTitle = node?.title ?? '';
  customFunction_pu5orhkszi();
  await dataConnector_conn_zm0qcjeanu()
  }, 500)
  /* ========================== 组件事件处理方法 ========================== */


  /* -------------------------- 生命周期 -------------------------- */
  // 用于参数变更后重新执行自定义指令
      const queryUpdateFlag = ref(0);
      onMounted(() => { ;dataConnector_conn_j6w64h2xf2()

    });

    onUnmounted(() => {
      // 销毁定时器
      setTimeOutList.forEach(({ repeat, timer }) => {
        repeat ?  clearInterval(timer): clearTimeout(timer);
      });
    });

  /* ========================== 生命周期 ========================== */


  /* -------------------------- 数据关联处理 -------------------------- */

      // 处理 全局提示_提交成功 全局消息
        immediateWatch(
            () => vid_29phjnk96d_props.show,
            () => {
                if (vid_29phjnk96d_props.show) {
                    message[vid_29phjnk96d_props.type](vid_29phjnk96d_props.content, vid_29phjnk96d_props.duration, () => {
                        vid_29phjnk96d_props.show = false
                    })
                }
            }
        )
  // 处理 全局提示_新建失败 全局消息
        immediateWatch(
            () => vid_wi3cq3bxrr_props.show,
            () => {
                if (vid_wi3cq3bxrr_props.show) {
                    message[vid_wi3cq3bxrr_props.type](vid_wi3cq3bxrr_props.content, vid_wi3cq3bxrr_props.duration, () => {
                        vid_wi3cq3bxrr_props.show = false
                    })
                }
            }
        )
  // 处理 全局提示_编辑失败 全局消息
        immediateWatch(
            () => vid_ygtoh44tej_props.show,
            () => {
                if (vid_ygtoh44tej_props.show) {
                    message[vid_ygtoh44tej_props.type](vid_ygtoh44tej_props.content, vid_ygtoh44tej_props.duration, () => {
                        vid_ygtoh44tej_props.show = false
                    })
                }
            }
        )
  // 处理 全局提示_数据正在审批中 全局消息
        immediateWatch(
            () => vid_ji6fye3n26_props.show,
            () => {
                if (vid_ji6fye3n26_props.show) {
                    message[vid_ji6fye3n26_props.type](vid_ji6fye3n26_props.content, vid_ji6fye3n26_props.duration, () => {
                        vid_ji6fye3n26_props.show = false
                    })
                }
            }
        )
  // 处理 全局提示删除失败 全局消息
        immediateWatch(
            () => vid_rqdrvl0653_props.show,
            () => {
                if (vid_rqdrvl0653_props.show) {
                    message[vid_rqdrvl0653_props.type](vid_rqdrvl0653_props.content, vid_rqdrvl0653_props.duration, () => {
                        vid_rqdrvl0653_props.show = false
                    })
                }
            }
        )
  // 处理 新建校验全局提示_kac0t5vss1 全局消息
        immediateWatch(
            () => vid_wu7cuhr9ap_props.show,
            () => {
                if (vid_wu7cuhr9ap_props.show) {
                    message[vid_wu7cuhr9ap_props.type](vid_wu7cuhr9ap_props.content, vid_wu7cuhr9ap_props.duration, () => {
                        vid_wu7cuhr9ap_props.show = false
                    })
                }
            }
        )



  /* -------------------------- 表单数据同步 -------------------------- */
  /* ========================== 表单数据同步 ========================== */

  /* ========================== 数据关联处理 ========================== */


  /* -------------------------- 不同组件自定义的处理逻辑 -------------------------- */
  immediateWatch(
    () => [y_bsgawpe15k?.c_xnc5a6bd1k, vid_raw9r13imf_options?.value()],
    () => {
      if(!!handle_vid_raw9r13imf_change) {
      const options = (vid_raw9r13imf_options?.value() || []).find((item) => item.value === y_bsgawpe15k?.c_xnc5a6bd1k || item.label === y_bsgawpe15k?.c_xnc5a6bd1k )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_raw9r13imf_change(y_bsgawpe15k?.c_xnc5a6bd1k, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [y_bsgawpe15k?.u_nkuyc6hl1c, vid_gy5l740dez_options?.value()],
    () => {
      if(!!handle_vid_gy5l740dez_change) {
      const options = (vid_gy5l740dez_options?.value() || []).find((item) => item.value === y_bsgawpe15k?.u_nkuyc6hl1c || item.label === y_bsgawpe15k?.u_nkuyc6hl1c )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_gy5l740dez_change(y_bsgawpe15k?.u_nkuyc6hl1c, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [y_9a3mkqlyw4?.r_phcgfus9nz, vid_tnfq4cf6ft_options?.value()],
    () => {
      if(!!handle_vid_tnfq4cf6ft_change) {
      const options = (vid_tnfq4cf6ft_options?.value() || []).find((item) => item.value === y_9a3mkqlyw4?.r_phcgfus9nz || item.label === y_9a3mkqlyw4?.r_phcgfus9nz )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_tnfq4cf6ft_change(y_9a3mkqlyw4?.r_phcgfus9nz, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [y_9a3mkqlyw4?.h_u2pt65y47b, vid_4e40tfpzpy_options?.value()],
    () => {
      if(!!handle_vid_4e40tfpzpy_change) {
      const options = (vid_4e40tfpzpy_options?.value() || []).find((item) => item.value === y_9a3mkqlyw4?.h_u2pt65y47b || item.label === y_9a3mkqlyw4?.h_u2pt65y47b )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_4e40tfpzpy_change(y_9a3mkqlyw4?.h_u2pt65y47b, {...options} || {})
      }
    }
  )
  immediateWatch(
    () => [h_4si95erbps?.c_ktejjljlxb, vid_iu9guk8z1g_options?.value()],
    () => {
      if(!!handle_vid_iu9guk8z1g_change) {
      const options = (vid_iu9guk8z1g_options?.value() || []).find((item) => item.value === h_4si95erbps?.c_ktejjljlxb || item.label === h_4si95erbps?.c_ktejjljlxb )
      if(!options) {
        return;
      }
        // 重置了表单，这里重置下拉框
        handle_vid_iu9guk8z1g_change(h_4si95erbps?.c_ktejjljlxb, {...options} || {})
      }
    }
  )
  onMounted(() => {
    const rawColumnList = []
    traversalTreeStructure(vid_kojlvo03hy_props.columnList, (node) => {
      if (node.type === 'column') {
        rawColumnList.push(node)
      }
    });
    
    // 获取缓存的表格列宽度，处理列宽信息
    UserTableRecords.getTableRecords(localGet('al__UID')).then((res) => {
      const columnWidthMap = res['vid_kojlvo03hy'] ?? {};
      rawColumnList.map((column) => {
        if(columnWidthMap[column.dataIndex]) {
          column.width = columnWidthMap[column.dataIndex]
        }
      })
    });
    
    vid_kojlvo03hy_props.rawColumnList = rawColumnList;
  })
  // 生成表格列：相同分组的数据需要合并单元格
  const vid_kojlvo03hy_columns = computed(() => {
    // 需要合并单元格的列
    const groupKeys = [];

    // 将表头配置按照groupTitle字段进行分组，以实现多级表头
    const columnList = [...vid_kojlvo03hy_props.columnList];
    function formatColumns(columns) {
      columns.forEach(item => {
        const { dataIndex, contentAlign, children, customCellStyle } = item;
        // 如果当前列是分组列，则递归处理它的子列，当前列本身不作处理
        if (!dataIndex && children && children.length) {
          formatColumns(children);
          return;
        }

        const groupIndex = groupKeys.findIndex(item => item === dataIndex);
        // 如果当前字段属于分组字段，则给它添加合并单元格的配置，否则直接返回
        if (groupIndex === -1) {
          item.customCell = (record, index) => {
            return { style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        } else {
          item.customCell = (record, index) => {
            const rowGroupKeys = groupKeys.slice(0, groupIndex + 1);
            const rowSpanList = generateRowSpanList(vid_kojlvo03hy_options.value(), rowGroupKeys,vid_kojlvo03hy_props.editRecordMap);
            return { rowSpan: rowSpanList[index], style: { 'text-align': contentAlign, ...(customCellStyle || {}) } };
          };
        }
      })
    }

    // 格式化column：增加合并单元格的配置，以及自定义样式
    formatColumns(columnList);

    return columnList;
  });


    // 表格分页器信息：将总条数信息加到基础分页信息中
    const vid_kojlvo03hy_pagination = computed(() => {
      const { totalNumber, rt_tableConfig } = vid_kojlvo03hy_props;
      const {
        enable = true,
        current= 1,
        pageSize= 10,
        showSizeChanger= false,
        pageSizeOptions= '10,20,30,40',
        showTotal= false,
        showQuickJumper= false,
        simple= false,
        hideOnSinglePage= false,
      } = rt_tableConfig.pagination ?? {};
      const { size = 'default', layout='bottomRight' } = rt_tableConfig?.style?.paginationStyle || {}
      let info = {};
      if(enable) {
        info = {
          total: totalNumber || 0,
          pageSize,
          size,
          simple,
          current,
          showSizeChanger,
          pageSizeOptions: pageSizeOptions.split(','),
          showQuickJumper,
          hideOnSinglePage,
          position: [layout],
        }
        if(showTotal) {
          info.showTotal = (total, range) => `共${total}个项目，第${current}/${Math.ceil(total / pageSize)}页`
        }
        return info;
      }
      return false;
    })


        // 补充一个watch，用于监听删除最后一页最后一条数据的情况，然后重新加载数据
        watch(() => dataConnector_conn_zm0qcjeanu_response?.value?.data?.dataList, (newValue) => {
          const current = vid_kojlvo03hy_props.rt_tableConfig.pagination.current;
          if (!newValue?.length && current > 1) {
            vid_kojlvo03hy_props.rt_tableConfig.pagination.current = current - 1;
            dataConnector_conn_zm0qcjeanu();
          }
        });
  const vid_0wgjhl1sfz_style = computed(() => {
        return { "--background-hover": "#F5F5F5", "--background-select": "#EBF1FF" }
      });


      const vid_0wgjhl1sfz_style_span = computed(() => {
        return { marginLeft: '2px', color: "#595959" }
      });
  /**
   * 生成分组字段合并单元格的配置：返回值为一个数字数组，数组里面每一项即为该字段当前行的rowSpan配置
   * @param {Array} 表格中的数据
   * @param {Array} 当前分组字段的列表，注：为了保证优先级低的字段合并后是优先级高的字段合并后的子集，需要把比该字段优先级高的分组字段按顺序放在该字段前面；例如：所有分组字段列表为['grade', 'age', 'score']，要生成age字段的合并单元格配置，则该参数需要传['grade', 'age']
   * @returns {Array} 该字段合并单元格的rowSpan配置，例：[1, 1, 2, 0, 1]
   */
  function generateRowSpanList(dataSource, groupKeys,editRecordMap) {
    if (!dataSource || !dataSource.length) {
      return [];
    }

    const rowSpanList = [];

    // 判断单元格是否需要合并的临时值：使用表格数据最后一行进行初始化（表格数据的遍历是倒序进行的）
    let tempValue = getGroupValue(dataSource[dataSource.length - 1], groupKeys);
    // 记录需要合并单元格的数量
    let tempValueCount = 0;

    // 倒序遍历数组，以保证使用最前面一条数据合并单元格
    for (let index = dataSource.length - 1; index >= 0; index--) {
      rowSpanList[index] = 0;
      const groupValue = getGroupValue(dataSource[index], groupKeys);
      // 如果当前行的分组数据跟上一行一致，则将标记数量加一；否则将标记数量的当前值赋给上一条数据，并重置临时值和标记数量
      if(editRecordMap && editRecordMap[index]){ //如果当前行是编辑行
        rowSpanList[index + 1] = tempValueCount;
        tempValue = "";
        tempValueCount=1;
      }
      else if (groupValue === tempValue) {
        tempValueCount++;
      } else {
        rowSpanList[index + 1] = tempValueCount;
        tempValue = groupValue;
        tempValueCount = 1;
      }

      // 遍历到最后一行，将当前的标记数量赋给当前行
      if (index === 0) {
        rowSpanList[index] = tempValueCount;
      }
    }

    return rowSpanList;
  }

  /**
   * 根据分组字段列表生成当前数据行的分组值
   * @param {Object} 当前数据行
   * @param {Array} 分组字段列表
   * @returns {String} 拼装的当前数据行的分组值，例：record为{ age: 7, grade: '一年级', name: '小赵' }，groupKeys为['grade', 'age']，则拼装后的返回值为'一年级__$__7'
   */
  function getGroupValue(record, groupKeys) {
    const groupValueList = [];
    groupKeys.forEach(groupKey => {
      let val = record[groupKey]
      if (isArray(val)) {
        val = record[groupKey + '_labels']
      } else if (isObject(val)) {
        console.warn('警告表格列数据为object，可能导致行合并异常，列key为：'+ groupKey,val)
      }
      groupValueList.push(`${val}`);
    });
    return groupValueList.join('__$__');
  }

  /**
   * 将列表数据转换成树状数据
   * @param {Array} 原始的列表数据
   * @param {String|Number} 列表数据的唯一key
   * @param {String|Number} 列表数据转成树时的父级id
  */
  function convertListToTree(list, key, parentKey) {
    const clonedList = cloneDeep(list || []);

    // 遍历列表数据，生成树节点的map：key为列表数据的唯一key，value为列表当前行的数据
    const treeNodeMap = {};
    clonedList.forEach(item => {
      treeNodeMap[item[key]] = item;
    });

    const treeDataList = [];
    clonedList.forEach(item => {
      // 如果当前行数据的父级id不在树节点的map中，则当前数据为根节点数据，将其加入最终树形数据的列表；否则将其放入其父节点数据的children中
      if (!treeNodeMap[item[parentKey]]) {
        treeDataList.push(item);
      } else {
        if (!treeNodeMap[item[parentKey]].children) {
          treeNodeMap[item[parentKey]].children = [];
        }
        treeNodeMap[item[parentKey]].children.push(item);
      }
    });

    return treeDataList;
  }

  /**
   * 表格列宽伸缩处理，使用indexedDB缓存伸缩后的列宽度
   */
  const handleResizeColumn = (w, col, vid) => {
    col.width = w;
    
    UserTableRecords.saveTableRecords(col, localGet('al__UID'), vid)
    
  }
  /* ========================== 不同组件自定义的处理逻辑 ========================== */


  // ================================定制化逻辑========================================
  const userInfoStorage= localStorage.getItem('al__USER_INFO');
  if(userInfoStorage){
    try {
      const  userInfo  = JSON.parse(userInfoStorage);
      vid_xv172q5og0_props.value = userInfo.value.name;
    } catch(error) {
      console.log(error)
    }
  }
</script>
<style lang="less" scoped>
  .page_root {
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color:#F0F2F5;
  }
  .page_root :deep(.@{ant-prefix}-spin-nested-loading),
  .page_root :deep(.@{ant-prefix}-spin-container)
   {
      height: 100%;
  }
  .page_root :deep(.@{ant-prefix}-spin-container .@{ant-prefix}-table-wrapper)
   {
      display: flex;
      flex-flow: column nowrap;
      justify-content: flex-start;
  }
  .page_root :deep(.@{ant-prefix}-table)
   {
    flex: auto;
    overflow: auto;
  }
  .table-moreBtn_down {
    overflow: hidden; white-space: nowrap; text-overflow: ellipsis; width: 100px;
  }

  .table-moreBtn_menu :deep(.table-moreBtn_menu-item):hover {
    background: #ebf1ff;
  }

  /*  表格树结构样式处理，展开按钮层级增加*/
  :deep(.@{ant-prefix}-table-row-expand-icon) {
    z-index: 1;
  }
  /*  表格树结构 由于每个表格项采用自定义组件，使用绝对定位布局，开启树结构导致显示异常，暂时使用层级定位位置 */
  :deep(.@{ant-prefix}-table-row-level-1 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 15px !important;
    width: calc(100% - 15px);
  }
  :deep(.@{ant-prefix}-table-row-level-2 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 30px !important;
    width: calc(100% - 30px);
  }
  :deep(.@{ant-prefix}-table-row-level-3 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 45px !important;
    width: calc(100% - 45px);
  }
  :deep(.@{ant-prefix}-table-row-level-4 .@{ant-prefix}-table-cell-with-append .cell-wrapper-left) {
    left: 60px !important;
    width: calc(100% - 60px);
  }

  /* 穿梭框改变默认样式，为根据组件样式控制左右栏宽度。 */
  :deep(.@{ant-prefix}-transfer-list)
   {
      height: 100%;
      width: 50%;
  }
  .vid_s56vueei5e{
      max-height:700px;
      overflow-y:auto;
      box-shadow:0px 0px 0px 0px
  }
  .vid_8pns7v33m5 :deep(input) {
        cursor: undefined;
      }
  .vid_8pns7v33m5{
      width:100%
  }
  .vid_raw9r13imf{
      width:100%;
      box-shadow:0px 0px 0px 0px
  }
  .vid_qarxuskmxu{
      color:rgba(89, 89, 89, 1);
      font-size:13px
  }
  .vid_d66dmi6ade{
      font-weight:500;
      font-style:normal;
      color:rgba(255, 152, 56, 1);
      font-size:13px;
      text-decoration:none
  }
  .vid_h59riwksfl{
      color:rgba(89, 89, 89, 1);
      font-size:13px
  }
  .vid_c4cgb0q4ry{
      font-weight:500;
      font-style:normal;
      color:rgba(255, 152, 56, 1);
      font-size:13px;
      text-decoration:none
  }
  .vid_s4tt8wsqnh{
      box-shadow:0px 0px 0px 0px
  }
  .vid_gy5l740dez{
      width:100%
  }
  .vid_889tbzdf4b{
      color:rgba(89, 89, 89, 1);
      font-size:13px
  }
  .vid_r93xhv5r30{
      font-weight:500;
      font-style:normal;
      color:rgba(255, 152, 56, 1);
      font-size:13px;
      text-decoration:none
  }
  .vid_dxuwt0x2mo{
      color:rgba(89, 89, 89, 1);
      font-size:13px
  }
  .vid_r20uf5hzyv{
      font-weight:500;
      font-style:normal;
      color:rgba(255, 152, 56, 1);
      font-size:13px;
      text-decoration:none
  }
  .vid_77ik0apjal{
      box-shadow:0px 0px 0px 0px
  }
  .vid_jgbr65y1cl{
      margin-bottom:8px
  }
  .vid_5lxdiqxp8a{
      margin-bottom:24px
  }
  .vid_bu9bs5xqph{
      display:flex;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:8px;
      padding-top:8px;
      border-top-style:solid;
      border-top-width:1px;
      border-top-color:#D9D9D9
  }
  .vid_1i3z4r77bp{
      box-shadow:0px 0px 0px 0px
  }
  .vid_rrwhg6uosl{
      margin-left:16px;
      background-color:#3875FF
  }
  .vid_p1bc5uikot{
      max-height:700px;
      overflow-y:auto;
      box-shadow:0px 0px 0px 0px
  }
  .vid_ziyj99d09s :deep(input) {
        cursor: undefined;
      }
  .vid_ziyj99d09s{
      width:100%
  }
  .vid_tnfq4cf6ft{
      width:100%;
      box-shadow:0px 0px 0px 0px
  }
  .vid_j5hmnjsltj{
      color:rgba(89, 89, 89, 1);
      font-size:13px
  }
  .vid_648vqhfrms{
      font-weight:500;
      font-style:normal;
      color:rgba(255, 152, 56, 1);
      font-size:13px;
      text-decoration:none
  }
  .vid_ccumcjncwx{
      color:rgba(89, 89, 89, 1);
      font-size:13px
  }
  .vid_wuris1ear2{
      font-weight:500;
      font-style:normal;
      color:rgba(255, 152, 56, 1);
      font-size:13px;
      text-decoration:none
  }
  .vid_u1d0oxtj9s{
      box-shadow:0px 0px 0px 0px
  }
  .vid_4e40tfpzpy{
      width:100%
  }
  .vid_3ryskctmy6{
      color:rgba(89, 89, 89, 1);
      font-size:13px
  }
  .vid_3oh47af6mr{
      font-weight:500;
      font-style:normal;
      color:rgba(255, 152, 56, 1);
      font-size:13px;
      text-decoration:none
  }
  .vid_ht7dp4sz4h{
      color:rgba(89, 89, 89, 1);
      font-size:13px
  }
  .vid_3knara3kr3{
      font-weight:500;
      font-style:normal;
      color:rgba(255, 152, 56, 1);
      font-size:13px;
      text-decoration:none
  }
  .vid_8cwsf53znt{
      box-shadow:0px 0px 0px 0px
  }
  .vid_pirsai99up{
      margin-bottom:8px
  }
  .vid_949icguubm{
      margin-bottom:16px
  }
  .vid_2ebp2maika{
      display:flex;
      align-items:center;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-top:8px;
      padding-top:24px;
      border-top-style:solid;
      border-top-width:1px;
      border-top-color:#D9D9D9
  }
  .vid_fvyhl9q8vl{
      box-shadow:0px 0px 0px 0px
  }
  .vid_ettmq0qz5b{
      margin-left:16px;
      background-color:#3875FF
  }

  .vid_qa2d7fnpjg{
      width:100%;
      height:100%;
      overflow-x:auto;
      overflow-y:auto;
      position:relative
  }
  .vid_man6tn103k{
      height:100%;
      padding-left:16px
  }
  .vid_xgg4smyuq7{
      height:100%;
      overflow-x:auto;
      overflow-y:auto;
      display:block;
      background-color:#FFFFFF
  }
  .vid_pqhid1j9xl{
      padding-top:16px;
      padding-right:24px;
      padding-bottom:16px;
      padding-left:24px;
      background-color:#FFFFFF;
      box-shadow:0px 0px 0px 0px
  }
  .vid_hos2yxmizc{
      display:flex;
      flex-wrap:undefined;
      border-bottom-color:#F5F5F5
  }
  .vid_7kivq6lkr0{
      margin-left:24px;
      background-color:#3875FF
  }
  .vid_0lxg6f0wv1{
      margin-left:16px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_jhwyjzubd8{
      width:100%;
      margin-bottom:0px
  }
  .vid_iu9guk8z1g{
      width:100%
  }
  .vid_05r1u4nmxg{
      box-shadow:0px 0px 0px 0px
  }
  .vid_e6d6682rca{
      width:100%;
      margin-bottom:0px
  }
  .vid_laokusa9g6 :deep(input) {
        cursor: undefined;
      }
  .vid_laokusa9g6{
      width:100%;
      box-shadow:0px 0px 0px 0px
  }
  .vid_r1q8m99fkt{
      box-shadow:0px 0px 0px 0px
  }
  .vid_lqg73ypspz{
      height:16px;
      background-color:#F0F2F5;
      box-shadow:0px 0px 0px 0px
  }
  .vid_es8qqkl0xe{
      display:block;
      padding-top:16px;
      padding-right:24px;
      padding-bottom:16px;
      padding-left:24px;
      background-color:#FFFFFF;
      box-shadow:0px 0px 0px 0px
  }
  .vid_6iwz2ocdim{
      display:flex;
      align-items:center;
      flex-wrap:undefined;
      margin-bottom:16px
  }
  .vid_ipdla4ayd4{
      width:100%;
      display:flex;
      flex-direction:row;
      justify-content:flex-end;
      flex-wrap:undefined;
      margin-bottom:0px;
      padding-bottom:0px
  }
  .vid_ipdla4ayd4:hover{
      display:flex;
      flex-direction:row;
      justify-content:flex-end;
      flex-wrap:undefined
  }
  .vid_t1518w6pxe{
      background-color:#3875FF;
      border-style:solid;
      border-width:1px;
      border-color:#3875FF;
      border-radius:2px
  }
  .vid_dghk1oe6d2{
      display:flex;
      align-items:center;
      flex-wrap:undefined
  }
  .vid_19ogtmwtkw{
      margin-top:8px;
      padding-left:8px;
      font-family:arial, helvetica, "microsoft yahei";;
      font-weight:600;
      color:rgba(38, 38, 38, 1);
      font-size:16px;
      line-height:16px;
      border-left-style:solid;
      border-left-width:4px;
      border-left-color:#3875FF
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-thead) > tr {
      height: 40px;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-thead) > tr > th {
    background: #3875FF;
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 600;
    color: #FFFFFF;
    border-bottom:1px solid #D9D9D9;
    padding: 8px 16px;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr:not(:last-child) > th {
    border-bottom:1px solid #D9D9D9;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th {
    border-right:1px solid #D9D9D9;
  }
  /* 将表格自带的左边框取消，方便设置表头边框颜色和内容边框颜色 */
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container {
    border-left: none;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-thead > tr > th[colstart='0']:first-child {
    border-left:1px solid #D9D9D9;
  }
  /* 开启粘性表头后，表格结构会发生变化 需另外处理 */
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-header table {
    border-top:1px solid #D9D9D9;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container > .@{ant-prefix}-table-content > table {
    border-top:1px solid #D9D9D9;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-thead) > tr > th:not(:last-child):not(.@{ant-prefix}-table-selection-column):not(.@{ant-prefix}-table-row-expand-icon-cell):not([colspan])::before {
      background: #D9D9D9;
      width: 1px;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-cell-scrollbar) {
      box-shadow: none;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-tbody) tr {
    height: 40px;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-tbody) tr > td {
    font-size: 14px;
    font-family: arial, helvetica, "microsoft yahei";
    font-weight: 400;
    color: #262626;
    border-bottom:1px solid #D9D9D9;
    padding: 0 16px;
    word-break: break-all;
    .cell-wrapper {
      padding: 0 16px;
    }
  }

  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-tbody) tr > td .cell-wrapper {
    padding: 0 16px;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
    padding: 0;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn {
    padding: 0 30px 0 0;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table-tbody) tr > td .@{ant-prefix}-btn:last-child {
    padding: 0;
  }
  .vid_kojlvo03hy :deep(.table-striped-odd) td {
    background-color: #FFFFFF;
  }
  .vid_kojlvo03hy :deep(.table-striped-even) td {
    background-color: #F8FAFC;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td {
    border-right:1px solid #D9D9D9;
  }
  .vid_kojlvo03hy :deep(.@{ant-prefix}-table.@{ant-prefix}-table-bordered) .@{ant-prefix}-table-container .@{ant-prefix}-table-tbody tr > td:first-child {
    border-left:1px solid #D9D9D9;
  }
  .vid_kojlvo03hy:active{
      width:100%
  }
  .vid_kojlvo03hy:focus{
      width:100%
  }
  .vid_kojlvo03hy:hover{
      width:100%
  }
  .vid_9nxy1fed9u{
      height:100%;
      overflow-x:auto;
      overflow-y:auto;
      display:block;
      background-color:#FFFFFF;
      border-right-style:none;
      border-right-width:1px
  }
  .vid_jepug5ftkv{
      width:100%;
      display:flex;
      align-items:center;
      flex-wrap:undefined;
      padding-top:16px;
      padding-right:24px;
      padding-left:24px
  }
  .vid_a5dg4bwo8r{
      font-weight:600;
      color:rgba(38, 38, 38, 1);
      font-size:16px;
      box-shadow:0px 0px 0px 0px
  }
  .vid_1zdjor27av{
      margin-top:16px;
      margin-bottom:12px;
      padding-right:24px;
      padding-left:24px
  }
  .vid_cgywop81od{
      width:100%;
      border-color:#CCCCCC;
      border-radius:2px
  }
  .vid_lhlgo1rzjy{
      height:800px;
      overflow-y:auto;
      padding-right:24px;
      padding-left:24px
  }
  .vid_0wgjhl1sfz :deep(span) {
        color: undefined;
      }
  .vid_0wgjhl1sfz{
      width:100%
  }

  :deep(.@{ant-prefix}-table-empty .@{ant-prefix}-table-tbody tr > td) {
   padding: 0;
  }
</style>